package JDBC.Day02;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;

/**
 *  JDBC -- Insert语句
 */
public class JDBCInsert {
    public static void main(String[] args) {
        //1. 导入jar包
        // 将第三方厂商提供的数据库jar包放在新建的libs目录下
        // 右键点击libs目录，选择 Add as Library... 完成导入

        Connection conn = null;
        Statement stmt = null;

        try {
            //2. 注册驱动
            Class.forName("com.mysql.jdbc.Driver");

            //3. 获取数据库连接对象
            // 当数据库位于本机并且端口位3306时，可以省略该字段
            //conn = DriverManager.getConnection(
            //        "jdbc:mysql://localhost:3306/testdata", "root", "root");
            conn = DriverManager.getConnection("jdbc:mysql:///testdata", "root", "root");

            //4. 定义sql语句
            // 注意数据库表中的列数
            // 如果省略列名则VALUE后面必须提供等长的参数
            String sql = "INSERT INTO student VALUE (null, '陆大凤', '男', '1998-04-13', null, '长安')";

            //5. 获取执行sql的对象 Statement
            stmt = conn.createStatement();

            //6. 执行sql
            int count = stmt.executeUpdate(sql);

            //7. 处理结果
            System.out.println(count);
            if(count > 0) {
                System.out.println("添加成功！");
            } else {
                System.out.println("添加失败。。。");
            }

        } catch (ClassNotFoundException | SQLException e) {
            e.printStackTrace();
        } finally {
            //8. 释放资源
            if(stmt != null) {
                try {
                    stmt.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }

            }
            if(stmt != null) {
                try {
                    conn.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}
